#pragma once

#include "fxcc/mono/pch.h"

namespace mono
{
    struct FXCC_API Field
    {
        std::string m_TypeName;
        std::string m_FieldName;
        MonoType *m_FieldType = 0;
        MonoObject* m_Value = 0;
        MonoClassField* m_MonoField = 0;

        Field() = default;

        Field(MonoClassField* field) :m_MonoField(field)
        {
            m_FieldName = mono_field_get_name(field);
            m_FieldType = mono_field_get_type(field);
            m_TypeName = mono_type_get_name(m_FieldType);

        };
        void SetValue(MonoObject* object)
        {
            this->m_Value = object;
        }


    
    };
}
